#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

#include <string.h>
#define PI 3.14

//定义加分的函数
int Add(int x, int y) {
	int z = 0;
	z = x + y;
	return z;
}
// 定义圆面积的计算函数
float area(float x) {
	float y;
	y = PI * x*x;
	return y;
}

//int main() {
//	//char arr[] = "hello";
//	//char arr1[] = "abc";
//	//char arr2[] = { 'a','b','c', '\0'};
//	//
//
//	////strlen 查看字符长度 "\0"是字符串的结束语
//
//	//printf("%d\n", strlen(arr1));
//	//printf("%d\n", strlen(arr2));
//	////printf("%s\n", arr1);
//	////printf("%s\n", arr2);
//	//return 0;
//
//	//选择语句
//	/*int input = 0;
//	printf("加入广科:>");
//	printf("那要好后学习嘛（1/0）");
//	scanf("%d", &input);
//
//	if (input=1)
//	{
//		printf("好offer\n");
//	}
//	else
//	{
//		printf("买红薯\n");
//
//	}*/
//
//	//循环语句
//	/*int line = 0;
//	while (line<10)
//	{
//		printf("写代码：%d\n", line);
//		line++;
//	}
//	printf("继续努力！");*/
//
//	//函数
//	//int num1 = 0;
//	//int	num2 = 0;
//	//scanf("%d %d", &num1, &num2);
//	//int sum = Add(num1, num2);
//	//printf("%d", sum);
//	//
//	//int arr[5] = { 1,2,3,4,5 };
//	//int i = 0;
//
//	////循环打印 该数组
//	//while (i<5)
//	//{
//	//	printf("%d", arr[i]);
//	//	i++;
//	//}
//
//	//变量类型： int 整型； short 短整型； long 长整型；
//	//	unsigned 无字符整型; unsigned short	无字浮短整型 ； unsigned long 无字符长整型
//	 /*求一个圆的面积
//	float aera(float x);
//	float r, s;
//	printf("请输入圆的半径：");
//	scanf("%f", &r);
//
//	s = area(r);
//	printf("该圆的面积为：%f\n",s);*/
//
//	//逗号运算：逗号前面的值赋予后面计算
//	/*int s, x;
//	s = (x = 8 * 2, x * 4);
//	printf("x=%d,s=%d", x, s);
//*/
//	//从键盘上输入一个大写字符，输出对应的小写字符
//	//char c1, c2;
//	//c1 = getchar();
//	//c2 = c1 + 32; 
//	//putchar(c2);
//	//printf("对应的小写字母为：%c\n", c2);
//
//	//float a, b, c, area;+
//	//scanf("%f,%f,%f", &a, &b, &c);
//
//	//extern int g_val;
//	//printf("%d\n", g_val);
//	return 0;
//}

 //C语言中，一个工程只能有一个main，否则就会报错重复定义

//2.define  定义宏
//#define ADD(X,Y)((X)+(Y))
//
//int main()
//{
//	printf("%d\n", 4 * ADD(2, 3));
//	return 0;
//}

//3.指针  （就是用来间接访问内存地址的)
	  //一个内存单元等于一个字节
//  
//int main()
//{
//	int a = 10; //a 在内存中要分配的空间 -4字节 （调试窗口中查看 “内存”“监视”）
//	//只会拿出 第一个字节的地址
//	printf("%p\n", &a); // %p 专门用来打印地址的； & 是取地址运算符
//	int*pa = &a; //pa是用来存放地址的，在C语言中pa是叫指针变量
//	
//	// * 说明pa是指针变量
//	// int 说明pa 执行的对象是int类型的
//	return 0;
//}
  //通过*pa来改变a 的值， 例如：
//int main()
//{
//	int a = 10;
//	int *pa = &a;
//	*pa = 20; //* 简引用操作 *pa 就是通过pa里边的地址，找到a
//	printf("%d\n", a); 
//	return 0;
//}
int main() {
	printf("%d\n", sizeof(char*));
	printf("%d\n", sizeof(short*));
	printf("%d\n", sizeof(int*));
	printf("%d\n", sizeof(long*));
	printf("%d\n", sizeof(long long*));
	printf("%d\n", sizeof(float*));
	printf("%d\n", sizeof(double*));
	return 0;
}